1. Field of the Invention
The invention relates generally to communication of information among clients and servers in a computer network, such as the Internet. More particularly, this invention relates to a method and system for communicating among clients over the Internet.
2. Description of the Related Art
With the explosive expansion in use of computer networks, such as the Internet, the demand for exchanging data, voice, and video has increased to record levels. Internet service providers (ISPs) continue to strive to keep up with the increased demand for service. To meet such demand, the Internet uses a system of numbers, known as an Internet protocol (IP) address, to identify every computer connected to the Internet. Generally, the IP address is an identifier for a computer or device operating on a transmission control protocol/Internet protocol (TCP/IP) network, such as the Internet. The format of an IP address is a 32-bit numeric address written as four numbers separated by periods. Each number may be within the range from and including zero to 255. Within a private network, an IP address may be assigned at random to each computer, as long as the IP address is unique to each computer. However, connecting a private network to the Internet requires using registered IP addresses (commonly referred to as “Internet addresses”) to avoid duplicate addresses for different private networks. The number of unassigned Internet addresses is running out, so a new scheme called Classless Inter-Domain Routing (CIDR) is gradually replacing the present IP addressing scheme.
A large number of users obtain access to the Internet from commercial ISPs via a dial-up telephone modem. In a technical sense, ISPs are considered private networks and, thus, an ISP assigns a predetermined number of IP addresses among its users using any desired assigning method, such as dynamic host configuration protocol (DHCP). Thus, each time a user logs onto the ISP to connect to the Internet, the ISP assigns an IP address to the user to uniquely identify the user's computer (“client”) to other users on the Internet worldwide. Knowing the IP address, any Internet user may contact the client by entering the IP address in its application, which is usually a data, voice, or video communication software. The process is very similar to day-to-day telephone number dialing. Knowing a telephone number, a telephone user may call the telephone number from any telephone unit around the world.
Typically, a local telephone company assigns a unique telephone number to a new telephone customer. The assigned telephone number is static, i.e., fixed and does not change during the duration of service. Thus, any telephone user may reach the new telephone customer by simply dialing the customer's telephone number. However, as described above, the IP address of an ISP client is dynamic (i.e., not static) and, thus, changes each time the client signs on to access the Internet. Accordingly, an Internet user cannot simply contact the client, because the client's IP address is unknown. Hence, each time an Internet user wishes to contact the client, the client must provide the Internet user with the client's currently assigned IP address. In view of the dynamic characteristic of the Internet, Internet users encounter limitations when desiring to contact or exchange live data with the client, e.g., voice or video conferencing.
Thus, there is a need in the computer network technology for a method and system that allow network users to communicate despite the dynamic character of IP addresses. Such method and system should allow users to communicate without having to know a client's IP address in advance.